The problem in transmission over transmission channels that are sensitive to interference, such as the radio path, is often the poor quality of the transmission. Although several standardized end-to-end data services are actually provided with error correction protocols, which are applied either to the entire end-to-end connection or to some segments of the transmission path, these protocols are designed for error situations that are typical of fixed lines, but they are inadequate or unsuitable for special conditions, such as to a radio link. Therefore, it has been necessary to implement dedicated error correction solutions within the mobile communications system.
Since no single solution is suitable for all data services, there are several types of connections available e.g. in the pan-European mobile communications system GSM, and these connections may be divided into two classes. In the first class, error correction is carried out solely by means of channel coding, which in the GSM system is termed as Forward Error Correction (FEC). In the GSM recommendation this is termed as a transparent transfer mode, which is also abbreviated with "T". In the second connection class, in addition to channel coding, an additional protocol is applied, with re-transmission of data which has not been received correctly at the other end. In the GSM system this communication protocol is termed as a Radio Link Protocol (RLP), and this data transfer mode is referred to as non-transparent asynchronous data transmission, which is also abbreviated with NT. The present invention relates to the non-transparent data transmission.
In the non-transparent asynchronic data transmission over a circuit switched connection, data is transmitted from a transmitting party A to a receiving party B in RLP frames. The RLP frames are channel coded for the duration of transmission, so that the errors caused by the transmission channel can be corrected by the receiving party B in a channel decoding. In addition to the actual user data, RLP frames also contain error correction bits, by means of which the receiving party B can detect the errors that have not been corrected by channel coding. Each RLP frame is also numbered, or the order of the frames is indicated by another kind of identifier. The correctness of each received frame is tested at the receiving end. If the frame is detected to be correct, the receiving party acknowledges the reception by using the frame number. If the frame is not detected to be correct, a negative acknowledgement is transmitted. When the transmitting end receives a negative acknowledgement, or no acknowledgement at all, the transmitting party A re-transmits the RLP frame a predetermined number of times. The total number of the re-transmissions is limited in order to avoid endless transmission loops in a case of a very poor connection.
The RLP frames are stored, i.e. "buffered" at the transmitting end until they have been acknowledged, so that they are available if re-transmission is required. In order to limit the amount of buffering required, a sliding window is employed in the RLP protocol. Thus, the transmitting party A may transmit several RLP frames before an acknowledgement is required from the receiving party B. Since the errors passing through the channel coding are corrected by means of re-transmission of the defective RLP frames, "surplus capacity" must be reserved for re-transmission. This means that the data rate of the non-transparent connection is higher than the nominal data rate of the user. In a case where a channel has a relatively high quality, that is, when there are few errors passing the channel coding, this surplus capacity allows a sufficient number of re-transmissions without the actual data rate of the connection falling below the nominal user data rate. When the quality of the connection becomes poorer, the number of defective and lost RLP frames, and thus the number of re-transmissions increases. On extremely poor connections, buffering of the RLP frames, as well as flow control must be employed, which limits the amount of incoming data from the user to the transmission buffer. This means in practice that the actual user data rate is lower than the nominal user data rate, i.e. the throughput of the connection decreases.
It is thus a problem associated with a poor transmission channel that when the number of re-transmissions increases, the throughput of the connection drops below the nominal user data rate. If the number of re-transmissions further increases, and the maximum number of re-transmissions set for the connection is reached in some frame, it results in resetting of the RLP protocol, whereby parties A and B reset their internal variables related to data transmission. In connection with RLP resetting, information loss may occur, and the continuity of data thus cannot be guaranteed. Data transmission is practically impossible in the RLP reset -state, which causes releasing the connection.
The effect of a poor transmission channel may be reduced by changing a better channel coding scheme for the connection, provided that there are several channel coding alternatives available in the system. E.g. the channel coding scheme FEC used in the GSM system is convolution coding, whose efficiency may be expressed in terms of a convolution code ratio X/Y, which indicates that in channel coding, X data bits are represented with Y code bits. On a full-rate GSM traffic channel, for instance, the convolution code ratios corresponding to the user data rates 9.6 kbit/s, 4.8 kbit/s, and 2.4 kbit/s are 1/2 (1/2 is a so-called buffered ratio, i.e. the ratio is not exactly 1/2), 1/3 and 1/6, respectively. On a half-rate traffic channel the corresponding convolution code ratios for user data rates 4.8 kbit/s and 2.4 kbit/s are 1/2 and 1/3. Taking into use a better and more efficient channel coding scheme thus requires lowering the nominal user data rate.